上次我們介紹了如何將訊息印出來,今天我們要介紹如何將訊息輸入
Serial呢既然可以當訊息輸出的媒介,當然也可以當輸入的媒介
但是呢 你要怎樣arduino知道你有訊息輸入
這時呢 就要用到Serial.read(),然後讀取到的內容 放進一個變數
receivedChar = Serial.read();
不過不是隨時都要讓他讀取,要讓arduino知道 有訊息進來的時候
才去做讀取的動作,所以要多加一個Serial.available()
while(Serial.available()>0){
receivedChar = Serial.read();
}
藉由讀取到的訊息,來做簡易的LED燈控制
int LED = 3;
char receivedChar;
void setup() {
Serial.begin(9600);
pinMode(LED, OUTPUT);
}
void loop() {
while(Serial.available()>0){
receivedChar = Serial.read();
if(receivedChar == '1'){
digitalWrite(LED, HIGH);
Serial.println("LED燈開啟");
}
if(receivedChar == '2'){
digitalWrite(LED, LOW);
Serial.println("LED燈關閉");
}
}
}
上次介紹的Serial監視視窗,同樣有內建輸入功能
根據我們在上面寫的 我們在Serial輸入1 數位輸出3會變成高電位輸出
(忘了把耳機拿走)
然後輸入2 數位輸出會變成低電位
藉由從Serial輸入訊息,就能達到控制的功能
而使用像樹梅派之類內建網路的單板電腦搭配arduino,就能以較便宜的價格,做出遠端的控制
在搭配一些感測器,就能作到簡易的控制
下次呢 就要來介紹常用的感測器DHT22